package com.caldremch.rxretrofit;

import android.os.Bundle;
import android.view.View;
import android.widget.Toast;

import com.caldremch.rxretrofit.api.ApiService;
import com.caldremch.rxretrofit.api.BaseActiviy;
import com.caldremch.rxretrofit.api.listener.NextCallback;
import com.caldremch.rxretrofit.api.model.Banner;

import java.util.List;

public class MainActivity extends BaseActiviy {



    public void request(View view){


        ApiService.getInstance().getAppIndexBanner(this, new NextCallback<List<Banner>>() {
            @Override
            public void onNext(List<Banner> banners) {
                Toast.makeText(MainActivity.this, "succ", Toast.LENGTH_SHORT).show();
            }

            @Override
            public void onError(Throwable e) {
                super.onError(e);
            }
        });


    }


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //请求没调成功
//        ApiRetrofit.getAppIndexBanner(this, new NextCallback<List<Banner>>() {
//            @Override
//            public void onNext(List<Banner> banners) {
//                Log.e("tag",banners == null?"null":"not null");
//            }
//
//            @Override
//            public void onError(Throwable e) {
//                super.onError(e);
//                e.printStackTrace();
//                Toast.makeText(MainActivity.this, "error", Toast.LENGTH_SHORT).show();
//            }
//        });


        //封装前
//        ApiRetrofit.getInstance().getAppIndexBanner()
//                .subscribeOn(Schedulers.io())
//                .unsubscribeOn(Schedulers.io())
//                .map(new Function<BaseResp<List<Banner>>, List<Banner>>() {
//                    @Override
//                    public List<Banner> apply(@NonNull BaseResp<List<Banner>> listBaseResp) throws Exception {
//                        return listBaseResp.data;
//                    }
//                })
//                .observeOn(AndroidSchedulers.mainThread())
//                .
//                subscribe(
//
//                new Observer<List<Banner>>() {
//                    @Override
//                    public void onSubscribe(@NonNull Disposable d) {
//
//                    }
//
//                    @Override
//                    public void onNext(@NonNull List<Banner> banners) {
//
//                        Log.e("tag","==="+banners.size());
//                    }
//
//                    @Override
//                    public void onError(@NonNull Throwable e) {
//
//                    }
//
//                    @Override
//                    public void onComplete() {
//
//                    }
//                }
//        );

        //封装前,数据回调过来时, 需要转换, 过滤掉, 只需要data节点的内容 map , flatmap?
//        ApiRetrofit.getInstance().getAppIndexBanner().subscribeOn(Schedulers.io())
//                .subscribeOn(Schedulers.io())
//                .observeOn(AndroidSchedulers.mainThread())
//                .subscribe(
//                        new Observer<List<Banner>>() {
//                            @Override
//                            public void onSubscribe(@NonNull Disposable d) {
//                            }
//
//                            @Override
//                            public void onNext(@NonNull List<Banner> banners) {
//                            }
//
//                            @Override
//                            public void onError(@NonNull Throwable e) {
//                            }
//
//                            @Override
//                            public void onComplete() {
//
//                            }
//                        }
//
//                );

    }
}
